Docker Model
When a Docker Model is started on-demand it will be provided with a directory
(via environment variable INPUTS_DIRECTORY) which contains model input
in the form of a JSON file (inputs.json) and another directory (via
environment variable OUTPUTS_DIRECTORY), for it to write out its run result.
The result is expected to be written out to an output JSON file
(outputs.json).
Depending on the configuration of the Docker Model Runner framework the content of the input JSON file and the location of the output directory vary.
Docker Model only
In this configuration, the inputs.json takes the content of the
Model Inputs
data store. The content of outputs.json will be copied to to the
Model Outputs
data store.
Docker Model with a Post-Processor
In this configuration, the inputs.json still takes the content of the
Model Inputs
data store. However, Dais expects the input JSON object to have a path,
control.path, where it could insert seed information for different runs. See
the section on the expected output of a Pre-Processor
service for an example of the expected path.
The content of outputs.json will be zipped and copied to a location in the
File Manager. The url of the zipped file will be made available to the
Post-Processor service. The example at this
link
illustrates what is sent to the Post-Processor service.
Docker Model with a Pre- and a Post-Processor
In this configuration, the inputs.json takes the content of one of the many
versions of input JSON objects generated by the Pre-Processor service. The
content of outputs.json will be zipped and copied to a location in the File
Manager. The url of the zipped file will be made available to the
Post-Processor service. The example at this
link
illustrates what is sent to the Post-Processor service.